草庐IT

Lua 垃圾回收

全部标签

JVM垃圾回收相关概念

目录一、System.gc()的理解二、内存溢出与内存泄露(一)OOM(二)内存泄露三、StopTheWorld四、垃圾回收的并行与并发五、安全点与安全区域(一)安全点(二)安全区域六、引用(一)强引用(二)软引用(三)弱引用(四)虚引用(五)终结器引用一、System.gc()的理解System.gc或Runtime.getRuntime().gc()的调用,会显示触发FullGC,同时会对老年代和新生代进行回收,尝试释放被丢对象占用的内存。然而System.gc调用无法保证对垃圾收集器的调用,即运行这行代码并不一定会产生垃圾回收。一些特殊情况下,比如编写性能基准,我们可以在运行之间调用Sy

java - 如何使用 firebase 实时数据库在回收站 View 上使用拖放

我正在尝试将拖放功能实现到firebase回收器View。此实现的文档中没有足够的信息。我假设我必须使用onchildmoved作为事件监听器,但我不知道如何重新排序数据。 最佳答案 我在尝试让它在FirebaseUI3.1.0上为自己工作时遇到了很多困惑。这是我最终的工作解决方案(下面的解释)://overridesfromItemTouchHelperoverridefunonMove(recyclerView:RecyclerView,viewHolder:RecyclerView.ViewHolder,target:Recy

android - 如何使用架构组件分页库停止在回收站 View 上闪烁

我有一个类似聊天的Activity,我在其中使用RecyclerView和PagedListAdaper来加载一堆消息。我正在使用PositionalDataSource来加载数据。加载它自己工作正常但是当我发送消息时,我使我的数据源无效并且列表被重新制作。我的问题是当它这样做时它会闪烁:我尝试添加setHasStableIds(true)并覆盖getItemId,这可以在简单的适配器上运行,但在这里似乎不起作用。我似乎也不能只向getCurrentList()添加一个项目,因为它不受支持。另外,我没有使用数据库,只是向服务器发出请求。所以我的问题是,除了使数据源无效之外,还有更好的方

Android - 当应用程序在后台时,回收站 View 会调整大小

我的应用程序中有一个非常奇怪的错误。每次我打开我的应用程序时,我的View都运行良好,但是当我尝试将我的应用程序置于后台并再次打开我的应用程序时,我的回收器View会调整大小。这里有一张图片来恰本地描述它:这是正确的图片:当应用程序在后台运行时,这张图片弄乱了我的recyclerview,然后我再次打开它。有时我的recyclerview中的所有图像都消失了。这是屏幕截图:这是我的onResume()代码:publicvoidonResume(){Fragmentfragment=getSupportFragmentManager().findFragmentById(R.id.fra

java - 如何在回收站 View 中使用 OnClickListener?

这个问题在这里已经有了答案:RecyclerViewonClick(49个答案)关闭7年前。我基本上想做的是让显示在回收器View中的对象可点击某个TextViewid,因为我正在制作一个程序,在列表中显示专辑封面及其旁边的标题。我需要能够单击回收器View制作的每个框,并在单击时弹出一个带有其他信息(作者、发布日期、热门歌曲等)的TextView,然后是一个后退按钮(如果可能)返回专辑列表。我已经看了好几个小时了,但无法弄清楚如何让OnclickListener为它工作。如果您知道如何或有任何建议,我很乐意听取他们的意见。谢谢!packagecom.albumlist.albumli

android - 使用android中的数据绑定(bind)检测回收者 View 中的onClick

我指的是vogella-tutorial用于数据绑定(bind)我正在尝试做的事情:使用dataBinding在回收站View行中检测每个项目的onClick的最佳方法是什么activity_second.xml行布局.xmlMyAdapter.javapublicclassMyAdapterextendsRecyclerView.Adapter{privateListdata;//Provideareferencetotheviewsforeachdataitem//Complexdataitemsmayneedmorethanoneviewperitem,and//youprovi

android - 线程对象在完成后未被垃圾回收

我注意到我的应用程序正在泄漏内存。这可以在DDMS中看到,我设法获得OutOfMemoryError。我找到了泄漏的源头。其中一个Activity有一个线程在后台运行。此线程在onDestroy()中停止。运行结束,在DDMS中可以看到。现在,如果线程启动,就会发生泄漏,Activity在被销毁后不会被垃圾回收,因为它被线程引用了。如果线程根本没有启动,则一切正常。这里有一个简单的例子来证明这一点:publicclassMainActivityextendsActivity{@OverridepublicvoidonCreate(BundlesavedInstanceState){su

在活动或片段Android中使用按钮上下按钮的回收屏滚动滚动

如果有人了解如何使用“活动或片段中的上下按钮”按钮操作来实现RecyClerview滚动控件。同样,当具有隐形项目或具有更多数据的arraylist的回收库时,这些按钮将启用或设置为可见性,或者如果有任何实现该概念的想法,请建议我。看答案在下调按钮上单击inttotalItemCount=recyclerView.getAdapter().getItemCount();if(totalItemCount=totalItemCount)return;mLayoutManager.smoothScrollToPosition(recyclerView,null,lastVisibleItemInd

android - 按日期对回收站 View 项目进行分组?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我需要根据日期对我的回收站View数据进行分组,并在每组之间显示一些分隔符,如下所示。--项目#1----项目#2----January2016(Divider)----项目#3----项目#4----项目#5----December2015(Divider)----项目#6----项目#7--........我怎样才能做到这一点?

android - 如何从另一个 ViewHolder 中获取对 ViewHolder 的引用? (回收 View )

我有一个RecyclerView和一些view/card(我们暂时称它为View),它们都包含相同的东西,包括我用作分隔栏的View。我希望能够在当前View上方的view中更改此分隔栏的属性。所以假设我点击了显示test3的卡片,我希望能够设置test2view中的分隔栏的属性.澄清:我只需要为我单击的上方(或与此相关的任何其他View)的View引用ViewHolder,仅此而已。我应该怎么做?publicclassStuffManagerAdapterextendsRecyclerView.Adapter{privateListstuffList;privateContextco